1. Field Of The Invention
This invention relates generally to cable television communication systems. More particularly, the invention relates to a cable television communication system having a configurable hybrid medium access control system which facilitates efficient use of the upstream bandwidth in bi-directional cable television systems and equitable upstream channel access for communicating entities.
2. Description Of Related Art
Cable television (CATV) communication systems have traditionally comprised uni-directional systems which primarily provide video programming services to individual homes. These systems only permit communications in a downstream direction from the headend of a CATV system to the plurality of settop terminals in individual homes. However, bi-directional CATV communication systems have become increasingly standard, and almost necessary, as the popularity and diversity of interactive services has grown, such as pay per view (current) and interactive banking and home shopping (near future). Bi-directional CATV systems support both downstream and upstream communication. Individual subscribers, through the use of a settop terminal coupled to a television, may communicate with the headend, other subscribers or service providers within the system. These systems also permit subscribers to select specific video programming or consumer services and pay only for those services which are used. Other services requiring the use of upstream communication channels include medical, fire and burglar alarm services, subscriber polling and telemetry such as utility meter reading.
To facilitate a bi-directional communication flow, the frequency spectrum of the cable is divided into a downstream path originating at the headend and an upstream path originating at the settop terminals. In order to effectively utilize the upstream bandwidth, bi-directional CATV communication systems require medium access control (MAC) for coordinating the upstream transmissions from various settop terminals. Without such coordination, simultaneous upstream transmissions from the settop terminals will cause the signals to collide, resulting in an unintelligible signal and loss of data from all transmissions.
Traditional medium access control methods include plain old polling (POP), random access as in ALOHA, static time division multiple access, dynamic time division multiple access and multiple access with collision detection (MACD). These are examples of MAC in satellite channels or other systems with shared media. Each MAC method has throughput and access delay characteristics associated with the method employed.
Plain old polling (POP) is implemented by a network controller within the CATV headend which communicates with a plurality of settop terminals. When a settop terminal requires a service, a message or flag is placed in the transmit queue within the settop terminal. A polling cycle is initiated periodically by the network controller to empty the transmit queue of each settop terminal. The network controller interrogates in succession every settop terminal on the shared communication medium served by the network controller to determine which of the terminals are in need of services. This method is intended for applications that benefit from a store and forward system, where collisions in the upstream bandwidth are expected but latencies associated with the POP response delivery are irrelevant. In addition, it facilitates controlled communications for any diagnostic operation.
The disadvantage with POP is that it exhibits poor performance in terms of network efficiency, especially when a small subset of the settop terminals require access to the channel during a polling cycle. Further, the method is not suitable for connection-orientated services which require guaranteed bandwidth since the settop terminal may be subject to variable latencies in upstream channel access. This type of MAC is least suitable for interactive services.
In time division multiple access (TDMA), an upstream carrier frequency is formatted as a tightly synchronized series of repeating frames, each frame being divided into a number of time slots. Each time slot carries communications pertaining to a single settop terminal. Since the synchronization of the time frames is critical, the communicating entities, including the headend and all settop terminals, must be synchronized.
TDMA may be either static, dynamic or multiple access with collision detection. In the static (or fixed cycle) TDMA method, each settop terminal has a pre-allocated transmission time slot during which it may access the upstream channel. In this case, the CATV communication system is only capable of supporting the same number of settop terminals as the number of time slots, if each settop terminal is permitted to reserve only a single time slot per frame. Time slots must be used as assigned to prevent any transmission overlap from different settop terminals. This method has the advantage of providing guaranteed latency per cycle.
The disadvantage with static TDMA is that the cycle time, the duration between frames, is bound to be longer than necessary since each settop terminal is pre-assigned a time slot whether it needs the time slot or not. If on the average only ten per cent of the terminals communicate at any given time, then ninety per cent of the available channel capacity is wasted. Since the method is static, the cycle duration cannot improve over that which presently exists (slot-time .times. total number of terminals).
In the dynamic (variable cycle) TDMA method, time slots are allocated as demanded by individual settop terminals. A random time slot is reserved by the settop terminal that wishes to initiate communications. The network controller dynamically allocates the available time slots as requests are received from settop terminals. The dynamic allocation of time slots optimizes the use of the available bandwidth. However, the disadvantage with dynamic TDMA is that settop terminals may be forced to wait for a time slot when multiple settop terminals are competing for a fewer number of available time slots. Thus, the settop terminals experience a delay prior to the allocation of a time slot by the network controller. There is a point of diminishing returns for dynamic TDMA when the average access delay due to multiple terminals attempting to reserve the same time slot becomes greater than the fixed TDMA cycle duration.
Carrier sense multiple access with collision detection (CSMA/CD) is a random access mechanism with no knowledge of the order of transmissions (this is the access scheme used in an Ethernet local area network). The carrier-sense is impractical in existing CATV communication systems and is generally not employed. Although the state of the upstream channel can be inferred from the downstream channel by providing feedback information on the downstream channel, the settop terminals cannot accurately monitor the upstream channel due to the physical limitations of most existing CATV communication systems. In the tree and branch topology of a CATV system, an upstream transmission on one feeder cable cannot be received on the upstream channel of another feeder channel. Further, drop cable directional taps, the taps that connect the drop cables to the feeder cable, inhibit the detection of the transmission of another settop terminal even if it is on the same feeder.
Although CSMA/CD facilitates allocation of bandwidth on demand, it falls short of providing a guaranteed bandwidth to a settop terminal. Carrier sense exhibits unnecessary access delays as the number of active terminals reach a threshold beyond which throughput experiences intolerable delays. Therefore, it cannot efficiently support connection-orientated services and applications. Further, variable latencies may require communication traffic modelling for proper resource allocation in addition to imposing undesired limitations on settop terminal distance from the headend.
Accordingly, there exists a need for a simple medium access control method which efficiently utilizes the available upstream bandwidth and allocates the bandwidth required to support communications for requested applications and services with various traffic characteristics, such as latency, bandwidth and throughput requirements.